ssh 远程连接docker

ssh 远程连接docker

  • 先拉一个ubuntu镜像
docker pull nvidia/cuda:10.0-base-ubuntu18.04
  • 启动一个容器,并将50003端口映射到容器的22端口上
docker run --name jhag --gpus all -it -p 50003:22 nvidia/cuda:10.0-base-ubuntu18.04
  • 进入容器
docker exec -it jhang /bin/bash
  • 设置容器密码
root@576e4ca3aa7b:~$ sudo passwd root
Changing password for user root.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
  • 安装 ssh 服务
sudo apt-get update && apt-get install openssl openssh-server
  • 修改配置,获取远程ROOT权限
sudo vim /etc/ssh/sshd_config,

PubkeyAuthentication yes #启用公钥私钥配对认证方式

PermitRootLogin yes #root能使用ssh登录

port=22 #开启22端口
  • 开启 ssh 服务
service ssh restart
  • 登录测试
ssh root@10.1.1.2 -p 50003

保存容器

sudo docker commit 容器id pytorch2-0:ssh

重新运行

docker run -d -p 50003:22 pytorch2-0:ssh /usr/sbin/sshd -D

关掉该容器

在宿主机通过 docker stop 容器id 即可关闭

启动容器 docker start 容器id

------ 本文结束 🎉🎉 谢谢观看 ------
0%